package com.yami.shop.bean.model;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.Date;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 订单表 充值或购买vip
 * </p>
 *
 * @author chajiu
 * @since 2021-07-14
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("ch_futong_order")
@ApiModel(value="JiaoyouOrder对象", description="订单表 充值或购买vip")
public class JiaoyouOrder implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "订单ID")
    @TableId(value = "order_id", type = IdType.AUTO)
    private Long orderId;

    @ApiModelProperty(value = "订购流水号")
    private String orderNumber;

    @ApiModelProperty(value = "购买服务名称")
    private String prodName;

    @ApiModelProperty(value = "订单类型 1充值钻石 2购买vip")
    private Integer orderType;

    @ApiModelProperty(value = "钻石套餐或vip套餐id")
    private Integer packageId;

    @ApiModelProperty(value = "购买钻石数量")
    private Integer diamondNum;

    @ApiModelProperty(value = "订购用户ID")
    private String userId;

    @ApiModelProperty(value = "总值")
    private BigDecimal total;

    @ApiModelProperty(value = "实际总值")
    private BigDecimal actualTotal;

    @ApiModelProperty(value = "支付方式 0 手动代付 1 微信支付 2 支付宝")
    private Integer payType;

    @ApiModelProperty(value = "订单备注")
    private String remarks;

    @ApiModelProperty(value = "订单状态 1:待付款  2:成功 3:失败")
    private Integer status;

    @ApiModelProperty(value = "订购时间")
    private Date createTime;

    @ApiModelProperty(value = "订单更新时间")
    private Date updateTime;

    @ApiModelProperty(value = "付款时间")
    private Date payTime;

    @ApiModelProperty(value = "完成时间")
    private Date finallyTime;

    @ApiModelProperty(value = "是否已经支付，1：已经支付过，0：，没有支付过")
    private Integer isPayed;


}
